home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus 1996 #5 / Amiga Plus CD - 1996 - No. 5.iso / pd / spiele / boulderdäsh / install / boulderdäsh.install next >
Text File  |  1996-06-07  |  14KB  |  417 lines

  1. ; $VER: BoulderDäsh.install 1.54 (07.06.96)
  2. ; Install script for BoulderDäsh (Workbench 2.0 or higher)
  3. ;
  4. (COMPLETE 0)
  5. ;(USER 2)
  6. (SET #ApplicationName "BoulderDäsh")
  7. (SET #ApplicationDir "sys:")
  8. (SET #ArchiveDir "/")
  9. (SET #Language -1)
  10. (SET #Documents -1)
  11. (SET #ApplicationKeyfile (CAT #ApplicationName ".key"))
  12.  
  13. ;=============================================================================
  14. ; German strings
  15.  
  16. (IF (= @language "deutsch")
  17. (
  18. (SET default_lang 2)
  19.  
  20. (SET #bad-kick "Sie benötigen Workbench 2.0 oder größer")
  21. (SET #bad-installer
  22. (CAT "Achtung! Es ist eine alte Version des Programmes 'Installer' "
  23.      "auf Ihrem Amiga!\n\nDie Installation benötigt mindestens Installer 42.9.\n\n"
  24.      "Bitte überprüfen Sie Ihre Konfiguration!"
  25. ))
  26.  
  27. (SET #App-InstallMsg
  28. (CAT "\n\BoulderDäsh Installationsskript.\n"
  29.         "Diese Skript installiert BoulderDäsh auf Ihrem Amiga.\n\n"
  30.         "Lesen Sie das Anleitungs-File für weitere Informationen\n"
  31.         " über den Vertrieb von BoulderDäsh.\n\n"
  32.         "BoulderDäsh © 1987-96 Guido Mersmann\n"
  33.         "All Rechte reserviert."
  34. ))
  35.  
  36. (SET #App-Where
  37. (CAT "Wo möchten Sie BoulderDäsh installieren ?\n"
  38.         "(Ein Verzeichnis wird angelegt)"
  39. ))
  40.  
  41. (SET #App-Update
  42. (CAT "\nEin BoulderDäsh-Verzeichnis existiert im ausgewählen"
  43.         " Verzeichnis. Wenn Sie fortfahren,"
  44.         " bestätigen Sie, daß Sie die alte BoulderDäsh-Installation"
  45.         " mit der neuesten Version updaten wollen.\n"
  46.         "Verschiedene BoulderDäsh-Dateien (z.B Prefs) werden überschrieben!"
  47. ))
  48.  
  49. (SET #App-Main "Welche Version von BoulderDäsh möchten Sie installieren?")
  50. (SET #App-Main-help
  51. (CAT "Die OS2.0+ Version läuft unter allen Systemen ab OS2.0."
  52.      " Die OS2.1+ Version hat den Nutzen, daß sie weniger Resourcen"
  53.      " benutzt, wenn sich BoulderDäsh im Hintergrund befindet. Dazu MUß"
  54.      " die Locale.library eingebunden sein. Für die OS3.0+ gilt das selbe"
  55.      " wie für die OS2.1 Verison. Es werden OS3.0+ Routinen benutzt, die"
  56.      " weiteren Speicher sparen."
  57. ))
  58.  
  59. (SET #App-Language "\nWelche Sprachen sollen installiert werden ?")
  60.  
  61. (SET #App-Language-help
  62. (CAT "\nDer Amiga kann in vielen verschiedenen Sprachen"
  63.          " arbeiten. Um Plattenkapazität zu sparen können Sie"
  64.          " nur die Sprachen anwählen, die sie benötigen"
  65.          " Haken Sie also einfach die Sprachen ab, die Sie"
  66.          " Ihrem System zugänglich machen wollen."
  67.           @askoptions-help
  68. ))
  69.  
  70. (SET #App-Docs "\nWelche Anleitungs- und Informationsdateien wollen Sie installieren ?")
  71.  
  72. (SET #App-Exit "\nBoulderDäsh installiert !!")
  73.  
  74.  
  75. ))
  76.  
  77. ;=============================================================================
  78. ; English strings
  79.  
  80. (IF (<> @language "deutsch")
  81. (
  82. (SET default_lang 4)
  83.  
  84. (SET #bad-kick "You must have at least Workbench 2.0+")
  85. (SET #bad-installer
  86. (CAT "You have an old version of the program 'Installer' "
  87.      "on your Amiga!\n\nThe installation procedure needs at least Installer 42.9.\n\n"
  88.      "Please check your configuration!"
  89. ))
  90.  
  91. (SET #App-InstallMsg
  92. (CAT "\n\BoulderDäsh installation script.\n"
  93.         "This script installs BoulderDäsh on your Amiga.\n\n"
  94.         "Read the DOK-file for more information\n"
  95.         " on the distribution of BoulderDäsh.\n\n"
  96.         "BoulderDäsh © 1997-96 Guido Mersmann\n"
  97.         "All rights reserved."
  98. ))
  99.  
  100. (SET #App-Where
  101. (CAT "Where would you like to install BoulderDäsh ?\n"
  102.         "(A drawer will be created)"
  103. ))
  104.  
  105. (SET #App-Update
  106. (CAT "\nA BoulderDäsh drawer does already exist in the selected "
  107.         " directory. By selecting \"Proceed\", you"
  108.         " indicate that you want to update the BoulderDäsh"
  109.         " installation with the most recent version.\n"
  110.         "Several BoulderDäsh specific files will be overwritten!"
  111. ))
  112.  
  113. (SET #App-Main "Which BoulderDäsh version should be installed ?")
  114. (SET #App-Main-help
  115. (CAT "The OS2.0+ version should only be used on Systems with OS2."
  116.      " The OS2.1+ and the OS3.0+ version need less Memory. Locale is required!"
  117.      " Special OS3.0+ functions are used to save more memory."
  118. ))
  119.  
  120. (SET #App-Language "\nWhich languages should be installed ?")
  121. (SET #App-Language-help
  122. (CAT "\nThe Amiga can be operated in many different"
  123.           " languages."
  124.           "To reduce the amount of space consumed by the"
  125.           " language files, you can select to have only the"
  126.           " files of specific languages copied.\n\n"
  127.           "Simply check the boxes of the languages you wish"
  128.           " to have available on your system.\n\n"
  129.           @askoptions-help
  130. ))
  131.  
  132. (SET #App-Docs "\nWhich text files should be installed in \"BoulderDäsh:Docs\" ?")
  133.  
  134. (SET #App-Exit "\nBoulderDäsh installed !!")
  135.  
  136.  
  137. ))
  138. ;----------------------------------------------------------------------------
  139. ;----------------------------------------------------------------------------
  140. ;    Ask for Catalogs
  141. ;----------------------------------------------------------------------------
  142. ;----------------------------------------------------------------------------
  143. (PROCEDURE P_AskCatalogs #Language
  144.  
  145. (SET #Dummy     (ASKOPTIONS
  146.                 (PROMPT #App-Language)
  147.                 (HELP #App-Language-help)
  148.                 (CHOICES
  149.                         "English"
  150.                         "Deutsch")
  151.                 (DEFAULT #Language)
  152.         )
  153. )
  154. ) ;PROCEDURE
  155. ;----------------------------------------------------------------------------
  156. ;----------------------------------------------------------------------------
  157. ;    Copy Selected Catalogs
  158. ;----------------------------------------------------------------------------
  159. ;----------------------------------------------------------------------------
  160. (PROCEDURE P_CopyCatalogs #Language
  161. (SET n 0)
  162. (SET #DestinationRoot (TACKON #ApplicationDir "Catalogs"))
  163. (SET #SourceRoot (TACKON #ArchiveDir "Catalogs"))
  164. (MAKEDIR #DestinationRoot)
  165.  
  166. (while (< n 2)
  167.         (SET #Dummy (SELECT n "english" "deutsch"))
  168.         (
  169.                 (IF (IN #Language n)
  170.                 (
  171.     (MAKEDIR (TACKON #DestinationRoot #Dummy))
  172.                         (COPYFILES
  173.                                 (SOURCE (TACKON #SourceRoot #Dummy))
  174.                                 (DEST (TACKON #DestinationRoot #Dummy))
  175.                                 (HELP @copyfiles-help)
  176.                                 (ALL)
  177.                         )
  178.                 )
  179.                 )
  180.         )
  181. (SET n (+ n 1))
  182. )
  183. ) ;PROCEDURE
  184. ;----------------------------------------------------------------------------
  185. ;----------------------------------------------------------------------------
  186. ;    Ask for docs
  187. ;----------------------------------------------------------------------------
  188. ;----------------------------------------------------------------------------
  189. (PROCEDURE P_AskDocs #Documents
  190. (SET #Dummy             (ASKOPTIONS
  191.                         (PROMPT #App-Docs)
  192.                         (HELP @askoptions-help)
  193.                         (CHOICES
  194.                         "english"
  195.                         "deutsch"
  196.                         )
  197.                         (DEFAULT #Documents)
  198.                   )
  199. )
  200. ) ;PROCEDURE
  201. ;----------------------------------------------------------------------------
  202. ;----------------------------------------------------------------------------
  203. ;    Copy docs
  204. ;----------------------------------------------------------------------------
  205. ;----------------------------------------------------------------------------
  206. (PROCEDURE P_CopyDocs #Documents
  207. (SET n 0)
  208. (SET #DestinationRoot (TACKON #ApplicationDir "Docs"))
  209. (SET #SourceRoot (TACKON #ArchiveDir "Docs"))
  210. (MAKEDIR #DestinationRoot)
  211.  
  212. (while (< n 2)
  213.         (SET #Dummy (SELECT n
  214.         "english"
  215.         "deutsch"
  216.     )
  217.         )
  218.         (
  219.                 (IF (IN #Documents n)
  220.                 (
  221.     (MAKEDIR (TACKON #DestinationRoot #Dummy))
  222.                         (COPYFILES
  223.                                 (SOURCE (TACKON #SourceRoot #Dummy))
  224.                                 (DEST (TACKON #DestinationRoot #Dummy))
  225.                                 (HELP @copyfiles-help)
  226.                                 (INFOS)
  227.                                 (ALL)
  228.                         )
  229.                 )
  230.                 )
  231.         )
  232. (SET n (+ n 1))
  233. )
  234. ) ;PROCEDURE
  235. ;----------------------------------------------------------------------------
  236. ;----------------------------------------------------------------------------
  237. ;    Copy_Dir (Dir)
  238. ;----------------------------------------------------------------------------
  239. ;----------------------------------------------------------------------------
  240. (PROCEDURE P_CopyDir #Dummy
  241.  
  242. (SET #DestinationRoot (TACKON #ApplicationDir #Dummy))
  243. (SET #SourceRoot (TACKON #ArchiveDir #Dummy))
  244. (MAKEDIR #DestinationRoot)
  245.  
  246.                    (COPYFILES
  247.     (SOURCE #SourceRoot)
  248.     (DEST #DestinationRoot)
  249.     (HELP @copyfiles-help)
  250.     (OPTIONAL <force>)
  251.     (ALL)
  252.     (INFOS)
  253.                    )
  254. ) ;PROCEDURE
  255. ;----------------------------------------------------------------------------
  256. ;----------------------------------------------------------------------------
  257. ;    Copy_File (Name)
  258. ;----------------------------------------------------------------------------
  259. ;----------------------------------------------------------------------------
  260. (PROCEDURE P_CopyFile #Dummy
  261.                    (COPYFILES
  262.     (SOURCE (TACKON #ArchiveDir #Dummy))
  263.     (DEST #ApplicationDir)
  264.     (HELP @copyfiles-help)
  265.     (OPTIONAL <force>)
  266.     (ALL)
  267.     (INFOS)
  268.                    )
  269. ) ;PROCEDURE
  270. ;----------------------------------------------------------------------------
  271. ;----------------------------------------------------------------------------
  272. ;    GetApplicationDir
  273. ;----------------------------------------------------------------------------
  274. ;----------------------------------------------------------------------------
  275. (PROCEDURE P_GetApplicationDir #Dummy
  276.  
  277. (SET #ApplicationDir
  278.         (TACKON
  279.                 (ASKDIR
  280.                         (PROMPT #App-Where)
  281.                         (HELP @askdir-help)
  282.                         (default #Dummy)
  283.                 )
  284.                 #ApplicationName
  285.         )
  286. )
  287. ) ;PROCEDURE
  288. ;----------------------------------------------------------------------------
  289. ;----------------------------------------------------------------------------
  290. ;    P_Requirements
  291. ;----------------------------------------------------------------------------
  292. ;----------------------------------------------------------------------------
  293. (PROCEDURE P_Requirements
  294. ; Workbench 37 or better required
  295. (IF (< (/ (getversion) 65536) 37)
  296. (
  297.   (abort #bad-kick)
  298. )
  299. )
  300. ; Installer 42.9 or better required
  301. (if (< @installer-version 2752521)
  302.   (
  303.     (message #bad-installer)
  304.     (exit (quiet))
  305.   )
  306. )
  307. ) ;PROCEDURE
  308. ;----------------------------------------------------------------------------
  309. ;----------------------------------------------------------------------------
  310. ;    P_Update
  311. ;----------------------------------------------------------------------------
  312. ;----------------------------------------------------------------------------
  313. (PROCEDURE P_Update
  314. (if (= (exists #ApplicationDir) 2)
  315.         (message #App-Update)
  316. )
  317. ) ;PROCEDURE
  318. ;----------------------------------------------------------------------------
  319. ;----------------------------------------------------------------------------
  320. ;    P_AskBinary
  321. ;----------------------------------------------------------------------------
  322. ;----------------------------------------------------------------------------
  323. (PROCEDURE P_AskBinary
  324. (set #Dummy (/ (getversion) 65536))
  325.  
  326. (if (= #Dummy 37) (set #Binary 0))
  327. (if (= #Dummy 38) (set #Binary 1))
  328. (if (> #Dummy 38) (set #Binary 2))
  329.  
  330. (set #Binary (askchoice
  331.     (prompt #App-Main)
  332.     (help #App-Main-help)
  333.     (choices
  334.     "OS2.0+"
  335.                            "OS2.1+"
  336.                            "OS3.0+"
  337.                         )
  338.     (default #Binary)
  339.             )
  340. )
  341. ) ;PROCEDURE
  342. ;----------------------------------------------------------------------------
  343. ;----------------------------------------------------------------------------
  344. ;    P_CopyBinary
  345. ;----------------------------------------------------------------------------
  346. ;----------------------------------------------------------------------------
  347. (PROCEDURE P_CopyBinary
  348. (set #Binary (Select #Binary #ApplicationName "Bin/OS21" "Bin/OS30"))
  349. (copyfiles
  350.         (source (tackon #ArchiveDir #Binary) (infos))
  351.         (dest #ApplicationDir)
  352.         (newname #ApplicationName)
  353.         (help @copyfiles-help)
  354.         (optional <force>)
  355. )
  356. ) ;PROCEDURE
  357. ;----------------------------------------------------------------------------
  358. ;----------------------------------------------------------------------------
  359. ;    P_KeyFile
  360. ;----------------------------------------------------------------------------
  361. ;----------------------------------------------------------------------------
  362. (PROCEDURE P_KeyFile
  363.  
  364. (SET #Dummy (tackon (tackon #ArchiveDir "Keyfile") #ApplicationKeyfile))
  365.  
  366. (if (<> (exists #Dummy (noreq)) 0) ((P_CopyDir "KeyFile"))
  367. )
  368. ) ;PROCEDURE
  369. ;----------------------------------------------------------------------------
  370. ;----------------------------------------------------------------------------
  371. ;    MAIN
  372. ;----------------------------------------------------------------------------
  373. ;----------------------------------------------------------------------------
  374. (P_Requirements)
  375. (message #App-installmsg)
  376. (welcome)
  377.  
  378.  (SET #ApplicationDir (P_GetApplicationDir #ApplicationDir))
  379.  
  380. (COMPLETE 1)
  381.  (P_Update)
  382.  (SET #Binary (P_AskBinary))
  383. (COMPLETE 2)
  384.  (SET #Language (P_AskCatalogs #Language))
  385. (COMPLETE 3)
  386.  (SET #Documents (P_AskDocs #Documents))
  387. (COMPLETE 4)
  388.  
  389. ;***** Delete old Data and Prefs
  390. (MAKEDIR #ApplicationDir (INFOS))
  391. (DELETE (TACKON #ApplicationDir "BoulderDäsh.prefs"))
  392. (DELETE (TACKON #ApplicationDir "Games/BDash_I.Game"))
  393. (DELETE (TACKON #ApplicationDir "Scores/BDash_I.Game"))
  394. (DELETE (TACKON #ApplicationDir "Graphics/ClassicAmiga.fnt"))
  395. (COMPLETE 10)
  396.  (P_CopyDir "Games")
  397. (COMPLETE 40)
  398.  (P_CopyDir "Caves")
  399. (COMPLETE 45)
  400.  (P_CopyDir "SampleSets")
  401. (COMPLETE 65)
  402.  (P_CopyDir "Title")
  403. (COMPLETE 70)
  404.  (P_CopyDir "Scores")
  405. (COMPLETE 80)
  406.  (P_CopyDir "Graphics")
  407. (COMPLETE 90)
  408.  (P_CopyDir "Fonts")
  409. (COMPLETE 95)
  410.  (P_CopyBinary)
  411.  (P_CopyFile (CAT #ApplicationName ".info"))
  412.  (P_CopyCatalogs #Language)
  413.  (P_CopyDocs #Documents)
  414.  (P_Keyfile)
  415. (COMPLETE 100)
  416. ;(exit #App-exit)
  417.